package com.tedu.day02.test;

/**
 *            普通类   抽象类   接口类
 *                     【关系】          【特点】
 *    类与类             继承       只能单继承、可多层继承
 *    类与抽象类          继承       可以单继承，不可以多继承
 *    抽象类与抽象类       继承        只能单继承、可多层继承
 *    类与接口            实现       可以单继承，也可以多实现
 *                                 并且继承同时实现多个接口
 *    接口与接口          继承        可以单继承，可以多继承
 *
 */
/*作业1：抽象类与接口区别和关系？简答
* 区别：①抽象类存在构造器，接口没有构造器
     ② 抽象类实例化方式：继承extends---子类---调方法【造型】
        接口类实例化方法：实现implements---实现类---调方法【造型】
     ③抽象类可以继承抽象类；接口无法继承抽象类，一个接口可以继承另一个接口
     ④抽象类中方法是 public  protected    接口方法是public
     ⑤抽象类关键词：abstract       接口关键词：interface
     ⑥ 抽象类包含抽象方法和非抽象方法，接口只包含抽象方法
关系：①抽象类和接口都用于实现代码的复用性
     ②抽象类和接口都不能实例化
     ③都具有多态性
     ④子类可以继承抽象
     ⑤定义：抽象类/接口   引用=new 抽象类/接口（）{};
*/



//5.接口与接口      继承   可以单继承，可以多继承
interface Loo{} interface Foo{}
interface Voo extends Loo,Foo{}

//4. 类与接口 ：实现        --- 可以单继承，也可以多实现
//interface Loo{} interface Foo{}
//class Joo{}
//class  Voo extends Joo implements  Loo,Foo{}

//3.抽象类与抽象类 :继承 -只能单继承、可多层继承
//abstract class Loo{}
//abstract class Voo extends Loo{}
//abstract class Uoo extends Voo{}


//2.类与抽象类:继承  -可以单继承，不可以多继承
// abstract class Uoo{}   abstract class Voo{}
//class Loo extends Uoo,Voo{}

//1.类与类:继承  -单继承,可以多层继承
//class Uoo{}
//class Loo extends Uoo{}
//class Voo extends Loo{}






public class 关系 {
}
